透過指令產生Flutter App的Apk時,發現產生的Apk有點肥(Apk Size約23MB)
flutter build apk
後來改用以下指令產Apk,大小可以縮小很多(Apk Size約9MB),
但又發現新問題,產生的APP版號跟pubspec.yaml設定的竟然不同
flutter build apk --split-per-abi
如下圖pubspec.yaml設定的版號為1
透過工具aapt(Android Asset Packaging Tool)檢查版號
aapt dump badging mypath/myApkName.apk
app-armeabi-v7a-release.apk版號卻是1001
app-arm64-v8a-release.apk是2001
app-x86_64-release.apk是4001
Google下
發現Flutter Github Issue上有討論#39871、#49544
大致上來說這是預設行為,因Google Play 商店不允許同一個應用程式使用多個全都具有相同版本資訊的APK
解法: 改成透過App Bundle部屬APP
參考解答
依需要將build apk指令改為下列三個
※若要上架到Google Play商店要記得3個Apk需設為不同的版號
app-arm64-v8a-release.apk
flutter build apk --target-platform=android-arm64
app-armeabi-v7a-release.apk
flutter build apk --target-platform=android-arm
app-x86_64-release.apk
flutter build apk --target-platform=android-x64
Flutter新手,有誤還請各位前輩不吝指教